from collections import deque

class FixedSizeStack:
    def __init__(self, max_size):
        self.stack = deque(maxlen=max_size)

    def push(self, item):
        self.stack.append(item)

    def get_latest(self):
        return self.stack[-1]

    def pop_earliest(self):
        return self.stack.popleft()

    def get_all_data(self):
        return list(self.stack)
    # 创建一个大小为 5 的定长堆栈
# 使用示例
# stack = FixedSizeStack(5)  # 创建一个大小为 5 的堆栈

